﻿using System;
using System.Collections.Generic;
using Loki.Engine;

namespace Luna.Model.Accounting
{
    /// <summary>
    /// Common interface for accounts.
    /// </summary>
    public interface IAccount : ILunaEntity, IEditable<IEditableAccount>
    {
        string Name { get; set; }

        string Bank { get; set; }

        string Number { get; set; }

        DateTime StartDate { get; set; }

        decimal InitialAmount { get; set; }

        decimal CurrentAmount { get; set; }

        decimal ValidatedAmount { get; }

        DateTime ValidatedDate { get; }

        IEnumerable<IAccountOperation> Operations { get; }
    }
}
